package top.infopub.model.bpa;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class BusinessPaymentExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public BusinessPaymentExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.isEmpty()) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        return new Criteria();
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return !criteria.isEmpty();
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value) {
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2) {
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andSguidIsNull() {
            addCriterion("SGUID is null");
            return (Criteria) this;
        }

        public Criteria andSguidIsNotNull() {
            addCriterion("SGUID is not null");
            return (Criteria) this;
        }

        public Criteria andSguidEqualTo(String value) {
            addCriterion("SGUID =", value);
            return (Criteria) this;
        }

        public Criteria andSguidNotEqualTo(String value) {
            addCriterion("SGUID <>", value);
            return (Criteria) this;
        }

        public Criteria andSguidGreaterThan(String value) {
            addCriterion("SGUID >", value);
            return (Criteria) this;
        }

        public Criteria andSguidGreaterThanOrEqualTo(String value) {
            addCriterion("SGUID >=", value);
            return (Criteria) this;
        }

        public Criteria andSguidLessThan(String value) {
            addCriterion("SGUID <", value);
            return (Criteria) this;
        }

        public Criteria andSguidLessThanOrEqualTo(String value) {
            addCriterion("SGUID <=", value);
            return (Criteria) this;
        }

        public Criteria andSguidLike(String value) {
            addCriterion("SGUID like", value);
            return (Criteria) this;
        }

        public Criteria andSguidNotLike(String value) {
            addCriterion("SGUID not like", value);
            return (Criteria) this;
        }

        public Criteria andSguidIn(List<String> values) {
            addCriterion("SGUID in", values);
            return (Criteria) this;
        }

        public Criteria andSguidNotIn(List<String> values) {
            addCriterion("SGUID not in", values);
            return (Criteria) this;
        }

        public Criteria andSguidBetween(String value1, String value2) {
            addCriterion("SGUID between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andSguidNotBetween(String value1, String value2) {
            addCriterion("SGUID not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andCodesIsNull() {
            addCriterion("CODES is null");
            return (Criteria) this;
        }

        public Criteria andCodesIsNotNull() {
            addCriterion("CODES is not null");
            return (Criteria) this;
        }

        public Criteria andCodesEqualTo(String value) {
            addCriterion("CODES =", value);
            return (Criteria) this;
        }

        public Criteria andCodesNotEqualTo(String value) {
            addCriterion("CODES <>", value);
            return (Criteria) this;
        }

        public Criteria andCodesGreaterThan(String value) {
            addCriterion("CODES >", value);
            return (Criteria) this;
        }

        public Criteria andCodesGreaterThanOrEqualTo(String value) {
            addCriterion("CODES >=", value);
            return (Criteria) this;
        }

        public Criteria andCodesLessThan(String value) {
            addCriterion("CODES <", value);
            return (Criteria) this;
        }

        public Criteria andCodesLessThanOrEqualTo(String value) {
            addCriterion("CODES <=", value);
            return (Criteria) this;
        }

        public Criteria andCodesLike(String value) {
            addCriterion("CODES like", value);
            return (Criteria) this;
        }

        public Criteria andCodesNotLike(String value) {
            addCriterion("CODES not like", value);
            return (Criteria) this;
        }

        public Criteria andCodesIn(List<String> values) {
            addCriterion("CODES in", values);
            return (Criteria) this;
        }

        public Criteria andCodesNotIn(List<String> values) {
            addCriterion("CODES not in", values);
            return (Criteria) this;
        }

        public Criteria andCodesBetween(String value1, String value2) {
            addCriterion("CODES between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andCodesNotBetween(String value1, String value2) {
            addCriterion("CODES not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andProCodeIsNull() {
            addCriterion("PRO_CODE is null");
            return (Criteria) this;
        }

        public Criteria andProCodeIsNotNull() {
            addCriterion("PRO_CODE is not null");
            return (Criteria) this;
        }

        public Criteria andProCodeEqualTo(String value) {
            addCriterion("PRO_CODE =", value);
            return (Criteria) this;
        }

        public Criteria andProCodeNotEqualTo(String value) {
            addCriterion("PRO_CODE <>", value);
            return (Criteria) this;
        }

        public Criteria andProCodeGreaterThan(String value) {
            addCriterion("PRO_CODE >", value);
            return (Criteria) this;
        }

        public Criteria andProCodeGreaterThanOrEqualTo(String value) {
            addCriterion("PRO_CODE >=", value);
            return (Criteria) this;
        }

        public Criteria andProCodeLessThan(String value) {
            addCriterion("PRO_CODE <", value);
            return (Criteria) this;
        }

        public Criteria andProCodeLessThanOrEqualTo(String value) {
            addCriterion("PRO_CODE <=", value);
            return (Criteria) this;
        }

        public Criteria andProCodeLike(String value) {
            addCriterion("PRO_CODE like", value);
            return (Criteria) this;
        }

        public Criteria andProCodeNotLike(String value) {
            addCriterion("PRO_CODE not like", value);
            return (Criteria) this;
        }

        public Criteria andProCodeIn(List<String> values) {
            addCriterion("PRO_CODE in", values);
            return (Criteria) this;
        }

        public Criteria andProCodeNotIn(List<String> values) {
            addCriterion("PRO_CODE not in", values);
            return (Criteria) this;
        }

        public Criteria andProCodeBetween(String value1, String value2) {
            addCriterion("PRO_CODE between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andProCodeNotBetween(String value1, String value2) {
            addCriterion("PRO_CODE not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeIsNull() {
            addCriterion("BUDGET_TYPE is null");
            return (Criteria) this;
        }

        public Criteria andBudgetTypeIsNotNull() {
            addCriterion("BUDGET_TYPE is not null");
            return (Criteria) this;
        }

        public Criteria andBudgetTypeEqualTo(String value) {
            addCriterion("BUDGET_TYPE =", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeNotEqualTo(String value) {
            addCriterion("BUDGET_TYPE <>", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeGreaterThan(String value) {
            addCriterion("BUDGET_TYPE >", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeGreaterThanOrEqualTo(String value) {
            addCriterion("BUDGET_TYPE >=", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeLessThan(String value) {
            addCriterion("BUDGET_TYPE <", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeLessThanOrEqualTo(String value) {
            addCriterion("BUDGET_TYPE <=", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeLike(String value) {
            addCriterion("BUDGET_TYPE like", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeNotLike(String value) {
            addCriterion("BUDGET_TYPE not like", value);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeIn(List<String> values) {
            addCriterion("BUDGET_TYPE in", values);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeNotIn(List<String> values) {
            addCriterion("BUDGET_TYPE not in", values);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeBetween(String value1, String value2) {
            addCriterion("BUDGET_TYPE between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andBudgetTypeNotBetween(String value1, String value2) {
            addCriterion("BUDGET_TYPE not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyIsNull() {
            addCriterion("BUDGET_MONEY is null");
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyIsNotNull() {
            addCriterion("BUDGET_MONEY is not null");
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyEqualTo(Integer value) {
            addCriterion("BUDGET_MONEY =", value);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyNotEqualTo(Integer value) {
            addCriterion("BUDGET_MONEY <>", value);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyGreaterThan(Integer value) {
            addCriterion("BUDGET_MONEY >", value);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyGreaterThanOrEqualTo(Integer value) {
            addCriterion("BUDGET_MONEY >=", value);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyLessThan(Integer value) {
            addCriterion("BUDGET_MONEY <", value);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyLessThanOrEqualTo(Integer value) {
            addCriterion("BUDGET_MONEY <=", value);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyIn(List<Integer> values) {
            addCriterion("BUDGET_MONEY in", values);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyNotIn(List<Integer> values) {
            addCriterion("BUDGET_MONEY not in", values);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyBetween(Integer value1, Integer value2) {
            addCriterion("BUDGET_MONEY between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andBudgetMoneyNotBetween(Integer value1, Integer value2) {
            addCriterion("BUDGET_MONEY not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeIsNull() {
            addCriterion("CONFIRMATION_TIME is null");
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeIsNotNull() {
            addCriterion("CONFIRMATION_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeEqualTo(Date value) {
            addCriterion("CONFIRMATION_TIME =", value);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeNotEqualTo(Date value) {
            addCriterion("CONFIRMATION_TIME <>", value);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeGreaterThan(Date value) {
            addCriterion("CONFIRMATION_TIME >", value);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CONFIRMATION_TIME >=", value);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeLessThan(Date value) {
            addCriterion("CONFIRMATION_TIME <", value);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeLessThanOrEqualTo(Date value) {
            addCriterion("CONFIRMATION_TIME <=", value);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeIn(List<Date> values) {
            addCriterion("CONFIRMATION_TIME in", values);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeNotIn(List<Date> values) {
            addCriterion("CONFIRMATION_TIME not in", values);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeBetween(Date value1, Date value2) {
            addCriterion("CONFIRMATION_TIME between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andConfirmationTimeNotBetween(Date value1, Date value2) {
            addCriterion("CONFIRMATION_TIME not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andCostTypeIsNull() {
            addCriterion("COST_TYPE is null");
            return (Criteria) this;
        }

        public Criteria andCostTypeIsNotNull() {
            addCriterion("COST_TYPE is not null");
            return (Criteria) this;
        }

        public Criteria andCostTypeEqualTo(String value) {
            addCriterion("COST_TYPE =", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeNotEqualTo(String value) {
            addCriterion("COST_TYPE <>", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeGreaterThan(String value) {
            addCriterion("COST_TYPE >", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeGreaterThanOrEqualTo(String value) {
            addCriterion("COST_TYPE >=", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeLessThan(String value) {
            addCriterion("COST_TYPE <", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeLessThanOrEqualTo(String value) {
            addCriterion("COST_TYPE <=", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeLike(String value) {
            addCriterion("COST_TYPE like", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeNotLike(String value) {
            addCriterion("COST_TYPE not like", value);
            return (Criteria) this;
        }

        public Criteria andCostTypeIn(List<String> values) {
            addCriterion("COST_TYPE in", values);
            return (Criteria) this;
        }

        public Criteria andCostTypeNotIn(List<String> values) {
            addCriterion("COST_TYPE not in", values);
            return (Criteria) this;
        }

        public Criteria andCostTypeBetween(String value1, String value2) {
            addCriterion("COST_TYPE between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andCostTypeNotBetween(String value1, String value2) {
            addCriterion("COST_TYPE not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeIsNull() {
            addCriterion("PAYMENT_TYPE is null");
            return (Criteria) this;
        }

        public Criteria andPaymentTypeIsNotNull() {
            addCriterion("PAYMENT_TYPE is not null");
            return (Criteria) this;
        }

        public Criteria andPaymentTypeEqualTo(String value) {
            addCriterion("PAYMENT_TYPE =", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeNotEqualTo(String value) {
            addCriterion("PAYMENT_TYPE <>", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeGreaterThan(String value) {
            addCriterion("PAYMENT_TYPE >", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeGreaterThanOrEqualTo(String value) {
            addCriterion("PAYMENT_TYPE >=", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeLessThan(String value) {
            addCriterion("PAYMENT_TYPE <", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeLessThanOrEqualTo(String value) {
            addCriterion("PAYMENT_TYPE <=", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeLike(String value) {
            addCriterion("PAYMENT_TYPE like", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeNotLike(String value) {
            addCriterion("PAYMENT_TYPE not like", value);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeIn(List<String> values) {
            addCriterion("PAYMENT_TYPE in", values);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeNotIn(List<String> values) {
            addCriterion("PAYMENT_TYPE not in", values);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeBetween(String value1, String value2) {
            addCriterion("PAYMENT_TYPE between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andPaymentTypeNotBetween(String value1, String value2) {
            addCriterion("PAYMENT_TYPE not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andContractTypeIsNull() {
            addCriterion("CONTRACT_TYPE is null");
            return (Criteria) this;
        }

        public Criteria andContractTypeIsNotNull() {
            addCriterion("CONTRACT_TYPE is not null");
            return (Criteria) this;
        }

        public Criteria andContractTypeEqualTo(String value) {
            addCriterion("CONTRACT_TYPE =", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeNotEqualTo(String value) {
            addCriterion("CONTRACT_TYPE <>", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeGreaterThan(String value) {
            addCriterion("CONTRACT_TYPE >", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeGreaterThanOrEqualTo(String value) {
            addCriterion("CONTRACT_TYPE >=", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeLessThan(String value) {
            addCriterion("CONTRACT_TYPE <", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeLessThanOrEqualTo(String value) {
            addCriterion("CONTRACT_TYPE <=", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeLike(String value) {
            addCriterion("CONTRACT_TYPE like", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeNotLike(String value) {
            addCriterion("CONTRACT_TYPE not like", value);
            return (Criteria) this;
        }

        public Criteria andContractTypeIn(List<String> values) {
            addCriterion("CONTRACT_TYPE in", values);
            return (Criteria) this;
        }

        public Criteria andContractTypeNotIn(List<String> values) {
            addCriterion("CONTRACT_TYPE not in", values);
            return (Criteria) this;
        }

        public Criteria andContractTypeBetween(String value1, String value2) {
            addCriterion("CONTRACT_TYPE between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andContractTypeNotBetween(String value1, String value2) {
            addCriterion("CONTRACT_TYPE not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andContractCodeIsNull() {
            addCriterion("CONTRACT_CODE is null");
            return (Criteria) this;
        }

        public Criteria andContractCodeIsNotNull() {
            addCriterion("CONTRACT_CODE is not null");
            return (Criteria) this;
        }

        public Criteria andContractCodeEqualTo(String value) {
            addCriterion("CONTRACT_CODE =", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeNotEqualTo(String value) {
            addCriterion("CONTRACT_CODE <>", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeGreaterThan(String value) {
            addCriterion("CONTRACT_CODE >", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeGreaterThanOrEqualTo(String value) {
            addCriterion("CONTRACT_CODE >=", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeLessThan(String value) {
            addCriterion("CONTRACT_CODE <", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeLessThanOrEqualTo(String value) {
            addCriterion("CONTRACT_CODE <=", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeLike(String value) {
            addCriterion("CONTRACT_CODE like", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeNotLike(String value) {
            addCriterion("CONTRACT_CODE not like", value);
            return (Criteria) this;
        }

        public Criteria andContractCodeIn(List<String> values) {
            addCriterion("CONTRACT_CODE in", values);
            return (Criteria) this;
        }

        public Criteria andContractCodeNotIn(List<String> values) {
            addCriterion("CONTRACT_CODE not in", values);
            return (Criteria) this;
        }

        public Criteria andContractCodeBetween(String value1, String value2) {
            addCriterion("CONTRACT_CODE between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andContractCodeNotBetween(String value1, String value2) {
            addCriterion("CONTRACT_CODE not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andContractNameIsNull() {
            addCriterion("CONTRACT_NAME is null");
            return (Criteria) this;
        }

        public Criteria andContractNameIsNotNull() {
            addCriterion("CONTRACT_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andContractNameEqualTo(String value) {
            addCriterion("CONTRACT_NAME =", value);
            return (Criteria) this;
        }

        public Criteria andContractNameNotEqualTo(String value) {
            addCriterion("CONTRACT_NAME <>", value);
            return (Criteria) this;
        }

        public Criteria andContractNameGreaterThan(String value) {
            addCriterion("CONTRACT_NAME >", value);
            return (Criteria) this;
        }

        public Criteria andContractNameGreaterThanOrEqualTo(String value) {
            addCriterion("CONTRACT_NAME >=", value);
            return (Criteria) this;
        }

        public Criteria andContractNameLessThan(String value) {
            addCriterion("CONTRACT_NAME <", value);
            return (Criteria) this;
        }

        public Criteria andContractNameLessThanOrEqualTo(String value) {
            addCriterion("CONTRACT_NAME <=", value);
            return (Criteria) this;
        }

        public Criteria andContractNameLike(String value) {
            addCriterion("CONTRACT_NAME like", value);
            return (Criteria) this;
        }

        public Criteria andContractNameNotLike(String value) {
            addCriterion("CONTRACT_NAME not like", value);
            return (Criteria) this;
        }

        public Criteria andContractNameIn(List<String> values) {
            addCriterion("CONTRACT_NAME in", values);
            return (Criteria) this;
        }

        public Criteria andContractNameNotIn(List<String> values) {
            addCriterion("CONTRACT_NAME not in", values);
            return (Criteria) this;
        }

        public Criteria andContractNameBetween(String value1, String value2) {
            addCriterion("CONTRACT_NAME between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andContractNameNotBetween(String value1, String value2) {
            addCriterion("CONTRACT_NAME not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalIsNull() {
            addCriterion("APPLY_PAYMENT_TOTAL is null");
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalIsNotNull() {
            addCriterion("APPLY_PAYMENT_TOTAL is not null");
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalEqualTo(Integer value) {
            addCriterion("APPLY_PAYMENT_TOTAL =", value);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalNotEqualTo(Integer value) {
            addCriterion("APPLY_PAYMENT_TOTAL <>", value);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalGreaterThan(Integer value) {
            addCriterion("APPLY_PAYMENT_TOTAL >", value);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalGreaterThanOrEqualTo(Integer value) {
            addCriterion("APPLY_PAYMENT_TOTAL >=", value);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalLessThan(Integer value) {
            addCriterion("APPLY_PAYMENT_TOTAL <", value);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalLessThanOrEqualTo(Integer value) {
            addCriterion("APPLY_PAYMENT_TOTAL <=", value);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalIn(List<Integer> values) {
            addCriterion("APPLY_PAYMENT_TOTAL in", values);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalNotIn(List<Integer> values) {
            addCriterion("APPLY_PAYMENT_TOTAL not in", values);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalBetween(Integer value1, Integer value2) {
            addCriterion("APPLY_PAYMENT_TOTAL between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andApplyPaymentTotalNotBetween(Integer value1, Integer value2) {
            addCriterion("APPLY_PAYMENT_TOTAL not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameIsNull() {
            addCriterion("ORGANIZATION_NAME is null");
            return (Criteria) this;
        }

        public Criteria andOrganizationNameIsNotNull() {
            addCriterion("ORGANIZATION_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andOrganizationNameEqualTo(String value) {
            addCriterion("ORGANIZATION_NAME =", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameNotEqualTo(String value) {
            addCriterion("ORGANIZATION_NAME <>", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameGreaterThan(String value) {
            addCriterion("ORGANIZATION_NAME >", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameGreaterThanOrEqualTo(String value) {
            addCriterion("ORGANIZATION_NAME >=", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameLessThan(String value) {
            addCriterion("ORGANIZATION_NAME <", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameLessThanOrEqualTo(String value) {
            addCriterion("ORGANIZATION_NAME <=", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameLike(String value) {
            addCriterion("ORGANIZATION_NAME like", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameNotLike(String value) {
            addCriterion("ORGANIZATION_NAME not like", value);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameIn(List<String> values) {
            addCriterion("ORGANIZATION_NAME in", values);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameNotIn(List<String> values) {
            addCriterion("ORGANIZATION_NAME not in", values);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameBetween(String value1, String value2) {
            addCriterion("ORGANIZATION_NAME between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andOrganizationNameNotBetween(String value1, String value2) {
            addCriterion("ORGANIZATION_NAME not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andAddByIsNull() {
            addCriterion("ADD_BY is null");
            return (Criteria) this;
        }

        public Criteria andAddByIsNotNull() {
            addCriterion("ADD_BY is not null");
            return (Criteria) this;
        }

        public Criteria andAddByEqualTo(String value) {
            addCriterion("ADD_BY =", value);
            return (Criteria) this;
        }

        public Criteria andAddByNotEqualTo(String value) {
            addCriterion("ADD_BY <>", value);
            return (Criteria) this;
        }

        public Criteria andAddByGreaterThan(String value) {
            addCriterion("ADD_BY >", value);
            return (Criteria) this;
        }

        public Criteria andAddByGreaterThanOrEqualTo(String value) {
            addCriterion("ADD_BY >=", value);
            return (Criteria) this;
        }

        public Criteria andAddByLessThan(String value) {
            addCriterion("ADD_BY <", value);
            return (Criteria) this;
        }

        public Criteria andAddByLessThanOrEqualTo(String value) {
            addCriterion("ADD_BY <=", value);
            return (Criteria) this;
        }

        public Criteria andAddByLike(String value) {
            addCriterion("ADD_BY like", value);
            return (Criteria) this;
        }

        public Criteria andAddByNotLike(String value) {
            addCriterion("ADD_BY not like", value);
            return (Criteria) this;
        }

        public Criteria andAddByIn(List<String> values) {
            addCriterion("ADD_BY in", values);
            return (Criteria) this;
        }

        public Criteria andAddByNotIn(List<String> values) {
            addCriterion("ADD_BY not in", values);
            return (Criteria) this;
        }

        public Criteria andAddByBetween(String value1, String value2) {
            addCriterion("ADD_BY between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andAddByNotBetween(String value1, String value2) {
            addCriterion("ADD_BY not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andAddTimeIsNull() {
            addCriterion("ADD_TIME is null");
            return (Criteria) this;
        }

        public Criteria andAddTimeIsNotNull() {
            addCriterion("ADD_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andAddTimeEqualTo(Date value) {
            addCriterion("ADD_TIME =", value);
            return (Criteria) this;
        }

        public Criteria andAddTimeNotEqualTo(Date value) {
            addCriterion("ADD_TIME <>", value);
            return (Criteria) this;
        }

        public Criteria andAddTimeGreaterThan(Date value) {
            addCriterion("ADD_TIME >", value);
            return (Criteria) this;
        }

        public Criteria andAddTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("ADD_TIME >=", value);
            return (Criteria) this;
        }

        public Criteria andAddTimeLessThan(Date value) {
            addCriterion("ADD_TIME <", value);
            return (Criteria) this;
        }

        public Criteria andAddTimeLessThanOrEqualTo(Date value) {
            addCriterion("ADD_TIME <=", value);
            return (Criteria) this;
        }

        public Criteria andAddTimeIn(List<Date> values) {
            addCriterion("ADD_TIME in", values);
            return (Criteria) this;
        }

        public Criteria andAddTimeNotIn(List<Date> values) {
            addCriterion("ADD_TIME not in", values);
            return (Criteria) this;
        }

        public Criteria andAddTimeBetween(Date value1, Date value2) {
            addCriterion("ADD_TIME between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andAddTimeNotBetween(Date value1, Date value2) {
            addCriterion("ADD_TIME not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andUptByIsNull() {
            addCriterion("UPT_BY is null");
            return (Criteria) this;
        }

        public Criteria andUptByIsNotNull() {
            addCriterion("UPT_BY is not null");
            return (Criteria) this;
        }

        public Criteria andUptByEqualTo(String value) {
            addCriterion("UPT_BY =", value);
            return (Criteria) this;
        }

        public Criteria andUptByNotEqualTo(String value) {
            addCriterion("UPT_BY <>", value);
            return (Criteria) this;
        }

        public Criteria andUptByGreaterThan(String value) {
            addCriterion("UPT_BY >", value);
            return (Criteria) this;
        }

        public Criteria andUptByGreaterThanOrEqualTo(String value) {
            addCriterion("UPT_BY >=", value);
            return (Criteria) this;
        }

        public Criteria andUptByLessThan(String value) {
            addCriterion("UPT_BY <", value);
            return (Criteria) this;
        }

        public Criteria andUptByLessThanOrEqualTo(String value) {
            addCriterion("UPT_BY <=", value);
            return (Criteria) this;
        }

        public Criteria andUptByLike(String value) {
            addCriterion("UPT_BY like", value);
            return (Criteria) this;
        }

        public Criteria andUptByNotLike(String value) {
            addCriterion("UPT_BY not like", value);
            return (Criteria) this;
        }

        public Criteria andUptByIn(List<String> values) {
            addCriterion("UPT_BY in", values);
            return (Criteria) this;
        }

        public Criteria andUptByNotIn(List<String> values) {
            addCriterion("UPT_BY not in", values);
            return (Criteria) this;
        }

        public Criteria andUptByBetween(String value1, String value2) {
            addCriterion("UPT_BY between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andUptByNotBetween(String value1, String value2) {
            addCriterion("UPT_BY not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andUptTimeIsNull() {
            addCriterion("UPT_TIME is null");
            return (Criteria) this;
        }

        public Criteria andUptTimeIsNotNull() {
            addCriterion("UPT_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andUptTimeEqualTo(Date value) {
            addCriterion("UPT_TIME =", value);
            return (Criteria) this;
        }

        public Criteria andUptTimeNotEqualTo(Date value) {
            addCriterion("UPT_TIME <>", value);
            return (Criteria) this;
        }

        public Criteria andUptTimeGreaterThan(Date value) {
            addCriterion("UPT_TIME >", value);
            return (Criteria) this;
        }

        public Criteria andUptTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("UPT_TIME >=", value);
            return (Criteria) this;
        }

        public Criteria andUptTimeLessThan(Date value) {
            addCriterion("UPT_TIME <", value);
            return (Criteria) this;
        }

        public Criteria andUptTimeLessThanOrEqualTo(Date value) {
            addCriterion("UPT_TIME <=", value);
            return (Criteria) this;
        }

        public Criteria andUptTimeIn(List<Date> values) {
            addCriterion("UPT_TIME in", values);
            return (Criteria) this;
        }

        public Criteria andUptTimeNotIn(List<Date> values) {
            addCriterion("UPT_TIME not in", values);
            return (Criteria) this;
        }

        public Criteria andUptTimeBetween(Date value1, Date value2) {
            addCriterion("UPT_TIME between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andUptTimeNotBetween(Date value1, Date value2) {
            addCriterion("UPT_TIME not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andProcessStatusIsNull() {
            addCriterion("PROCESS_STATUS is null");
            return (Criteria) this;
        }

        public Criteria andProcessStatusIsNotNull() {
            addCriterion("PROCESS_STATUS is not null");
            return (Criteria) this;
        }

        public Criteria andProcessStatusEqualTo(String value) {
            addCriterion("PROCESS_STATUS =", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusNotEqualTo(String value) {
            addCriterion("PROCESS_STATUS <>", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusGreaterThan(String value) {
            addCriterion("PROCESS_STATUS >", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusGreaterThanOrEqualTo(String value) {
            addCriterion("PROCESS_STATUS >=", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusLessThan(String value) {
            addCriterion("PROCESS_STATUS <", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusLessThanOrEqualTo(String value) {
            addCriterion("PROCESS_STATUS <=", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusLike(String value) {
            addCriterion("PROCESS_STATUS like", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusNotLike(String value) {
            addCriterion("PROCESS_STATUS not like", value);
            return (Criteria) this;
        }

        public Criteria andProcessStatusIn(List<String> values) {
            addCriterion("PROCESS_STATUS in", values);
            return (Criteria) this;
        }

        public Criteria andProcessStatusNotIn(List<String> values) {
            addCriterion("PROCESS_STATUS not in", values);
            return (Criteria) this;
        }

        public Criteria andProcessStatusBetween(String value1, String value2) {
            addCriterion("PROCESS_STATUS between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andProcessStatusNotBetween(String value1, String value2) {
            addCriterion("PROCESS_STATUS not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andProcessIdIsNull() {
            addCriterion("PROCESS_ID is null");
            return (Criteria) this;
        }

        public Criteria andProcessIdIsNotNull() {
            addCriterion("PROCESS_ID is not null");
            return (Criteria) this;
        }

        public Criteria andProcessIdEqualTo(String value) {
            addCriterion("PROCESS_ID =", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdNotEqualTo(String value) {
            addCriterion("PROCESS_ID <>", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdGreaterThan(String value) {
            addCriterion("PROCESS_ID >", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdGreaterThanOrEqualTo(String value) {
            addCriterion("PROCESS_ID >=", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdLessThan(String value) {
            addCriterion("PROCESS_ID <", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdLessThanOrEqualTo(String value) {
            addCriterion("PROCESS_ID <=", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdLike(String value) {
            addCriterion("PROCESS_ID like", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdNotLike(String value) {
            addCriterion("PROCESS_ID not like", value);
            return (Criteria) this;
        }

        public Criteria andProcessIdIn(List<String> values) {
            addCriterion("PROCESS_ID in", values);
            return (Criteria) this;
        }

        public Criteria andProcessIdNotIn(List<String> values) {
            addCriterion("PROCESS_ID not in", values);
            return (Criteria) this;
        }

        public Criteria andProcessIdBetween(String value1, String value2) {
            addCriterion("PROCESS_ID between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andProcessIdNotBetween(String value1, String value2) {
            addCriterion("PROCESS_ID not between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andOaIdIsNull() {
            addCriterion("OA_ID is null");
            return (Criteria) this;
        }

        public Criteria andOaIdIsNotNull() {
            addCriterion("OA_ID is not null");
            return (Criteria) this;
        }

        public Criteria andOaIdEqualTo(String value) {
            addCriterion("OA_ID =", value);
            return (Criteria) this;
        }

        public Criteria andOaIdNotEqualTo(String value) {
            addCriterion("OA_ID <>", value);
            return (Criteria) this;
        }

        public Criteria andOaIdGreaterThan(String value) {
            addCriterion("OA_ID >", value);
            return (Criteria) this;
        }

        public Criteria andOaIdGreaterThanOrEqualTo(String value) {
            addCriterion("OA_ID >=", value);
            return (Criteria) this;
        }

        public Criteria andOaIdLessThan(String value) {
            addCriterion("OA_ID <", value);
            return (Criteria) this;
        }

        public Criteria andOaIdLessThanOrEqualTo(String value) {
            addCriterion("OA_ID <=", value);
            return (Criteria) this;
        }

        public Criteria andOaIdLike(String value) {
            addCriterion("OA_ID like", value);
            return (Criteria) this;
        }

        public Criteria andOaIdNotLike(String value) {
            addCriterion("OA_ID not like", value);
            return (Criteria) this;
        }

        public Criteria andOaIdIn(List<String> values) {
            addCriterion("OA_ID in", values);
            return (Criteria) this;
        }

        public Criteria andOaIdNotIn(List<String> values) {
            addCriterion("OA_ID not in", values);
            return (Criteria) this;
        }

        public Criteria andOaIdBetween(String value1, String value2) {
            addCriterion("OA_ID between", value1, value2);
            return (Criteria) this;
        }

        public Criteria andOaIdNotBetween(String value1, String value2) {
            addCriterion("OA_ID not between", value1, value2);
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}